package com.ruoyi.service.equipment;

import com.ruoyi.domain.equipment.MesEquipmentMaintenance;

import java.util.List;

/**
 * 设备维护记录Service接口
 * 
 * @author ruoyi
 * @date 2024-01-01
 */
public interface IMesEquipmentMaintenanceService
{
    /**
     * 查询设备维护记录
     * 
     * @param maintenanceId 设备维护记录主键
     * @return 设备维护记录
     */
    public MesEquipmentMaintenance selectMesEquipmentMaintenanceByMaintenanceId(Long maintenanceId);

    /**
     * 查询设备维护记录列表
     * 
     * @param mesEquipmentMaintenance 设备维护记录
     * @return 设备维护记录集合
     */
    public List<MesEquipmentMaintenance> selectMesEquipmentMaintenanceList(MesEquipmentMaintenance mesEquipmentMaintenance);

    /**
     * 根据设备ID查询维护记录列表
     * 
     * @param equipmentId 设备ID
     * @return 设备维护记录集合
     */
    public List<MesEquipmentMaintenance> selectMaintenanceByEquipmentId(Long equipmentId);

    /**
     * 根据维护编号查询维护记录
     * 
     * @param maintenanceCode 维护编号
     * @return 设备维护记录
     */
    public MesEquipmentMaintenance selectMaintenanceByCode(String maintenanceCode);

    /**
     * 校验维护编号是否唯一
     * 
     * @param maintenanceCode 维护编号
     * @return 结果
     */
    public String checkMaintenanceCodeUnique(String maintenanceCode);

    /**
     * 新增设备维护记录
     * 
     * @param mesEquipmentMaintenance 设备维护记录
     * @return 结果
     */
    public int insertMesEquipmentMaintenance(MesEquipmentMaintenance mesEquipmentMaintenance);

    /**
     * 修改设备维护记录
     * 
     * @param mesEquipmentMaintenance 设备维护记录
     * @return 结果
     */
    public int updateMesEquipmentMaintenance(MesEquipmentMaintenance mesEquipmentMaintenance);

    /**
     * 批量删除设备维护记录
     * 
     * @param maintenanceIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteMesEquipmentMaintenanceByMaintenanceIds(Long[] maintenanceIds);

    /**
     * 删除设备维护记录信息
     * 
     * @param maintenanceId 设备维护记录主键
     * @return 结果
     */
    public int deleteMesEquipmentMaintenanceByMaintenanceId(Long maintenanceId);
}